package com.tange.ai.core.sample.token

import android.content.Intent
import android.os.Bundle
import android.view.Window
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import com.tange.ai.core.sample.databinding.ActivityThirdPartyAccountLoginBinding
import com.tange.ai.core.sample.home.HomeActivity
import com.tange.base.toolkit.StatusBarUtil
import com.tange.base.toolkit.StatusNavUtils
import com.tange.core.access.token.Authentication

/**
 * 使用第三方账号体系，进行登录，以获取用户令牌
 * 详见文档：https://tange-ai.feishu.cn/wiki/wikcn23dyAZIHGz5OGjOxe8l6yD#TE4SdwQ4soUEWoxZepScE8QlnxP
 */
class ThirdPartyAccountLoginActivity: AppCompatActivity() {

    private lateinit var binding: ActivityThirdPartyAccountLoginBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        requestWindowFeature(Window.FEATURE_NO_TITLE)
        StatusBarUtil.setLightStatusBar(this, true)
        StatusNavUtils.setTranslucentStatus(this)
        super.onCreate(savedInstanceState)

        binding = ActivityThirdPartyAccountLoginBinding.inflate(layoutInflater).apply {
            setContentView(root)
            supportActionBar?.hide()
        }

        /**
         * 当前页面的流程设计示例：
         * 1. 使用接入方自己的账号能力登录
         * 2. 经由接入方服务端，请求token（探鸽用户令牌）
         * 3. 进行SDK的用户令牌设置
         *
         * 详见：https://tange-ai.feishu.cn/wiki/wikcnpOeUVYNz5WWj6Zc17iDBqg
         */




        // 获取到token后，调用如下接口设置设置 （替换xxx）
        Authentication.configure("xxx") {
            if (it.success && it.data != null) {
                startActivity(Intent(this, HomeActivity::class.java))
                finish()
            } else {
                Toast.makeText(this, "用户令牌校验失败！\ncode = ${it.code} , msg = ${it.message}", Toast.LENGTH_LONG).show()
            }
        }
    }
}